home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / ietf / urn / urn-archives / urn-ietf.archive.9611 / 000206_owner-urn-ietf _Tue Nov 26 14:51:47 1996.msg < prev    next >
Internet Message Format  |  1997-02-19  |  11KB

  1. Received: (from daemon@localhost) by services.bunyip.com (8.6.10/8.6.9) id OAA13107 for urn-ietf-out; Tue, 26 Nov 1996 14:51:47 -0500
  2. Received: from mocha.bunyip.com (mocha.Bunyip.Com [192.197.208.1]) by services.bunyip.com (8.6.10/8.6.9) with SMTP id OAA13101 for <urn-ietf@services.bunyip.com>; Tue, 26 Nov 1996 14:51:44 -0500
  3. Received: from acl.lanl.gov by mocha.bunyip.com with SMTP (5.65a/IDA-1.4.2b/CC-Guru-2b)
  4.         id AA18308  (mail destined for urn-ietf@services.bunyip.com); Tue, 26 Nov 96 14:51:40 -0500
  5. Received: from legiron.acl.lanl.gov (legiron.acl.lanl.gov [128.165.147.188]) by acl.lanl.gov (8.7.3/8.7.3) with SMTP id MAA22304; Tue, 26 Nov 1996 12:51:33 -0700 (MST)
  6. Message-Id: <2.2.32.19961126200009.00d30be8@acl.lanl.gov>
  7. X-Sender: rdaniel@acl.lanl.gov
  8. X-Mailer: Windows Eudora Pro Version 2.2 (32)
  9. Mime-Version: 1.0
  10. Content-Type: text/plain; charset="us-ascii"
  11. Date: Tue, 26 Nov 1996 13:00:09 -0700
  12. To: Bob Briscoe <rbriscoe@jungle.bt.co.uk>
  13. From: Ron Daniel <rdaniel@acl.lanl.gov>
  14. Subject: Re: [URN] Persistence as part of URN framework
  15. Cc: "urn-ietf@bunyip.com" <urn-ietf@bunyip.com>
  16. Sender: owner-urn-ietf@services.bunyip.com
  17. Precedence: bulk
  18. Reply-To: Ron Daniel <rdaniel@acl.lanl.gov>
  19. Errors-To: owner-urn-ietf@bunyip.com
  20.  
  21. Thus spoke Bob Briscoe (at least at 10:27 AM 11/26/96 +0000)
  22.  
  23. >[...] No-one seems to be able to get their head round the fact that [...]
  24.  
  25. I'm trying to understand your point, and am sorry that its taking
  26. so much time. Lets try again.
  27.  
  28. >All I wanted was an *optional* persistence value to be possible,
  29.  
  30. Because of the limitations on DNS response sizes, there is a strong
  31. incentive not to put in any fields that are not needed. If we can
  32. agree that what you are asking for is necessary functionality not
  33. achievable by other means, then we will modify the NAPTR proposal to
  34. allow it. But I have not yet been convinced on that point. In fact,
  35. during the course of preparing this reply, I am more firmly of the
  36. view that the combination of DNS TTLs and the "Expires:" header of
  37. the HTTP resolution protocol (and equivalant features in other
  38. protocols) can achieve enough of what you are asking for that a
  39. seperate "lifetime" field is not justified.
  40.  
  41. Let me try again to state what I think you are asking for and why. Then I
  42. will explain what it won't achieve. Finally I will explain what it
  43. will achieve beyond the combo of DNS TTL and "Expires:"-type info, and
  44. why I think the additional benefit is not significant.
  45.  
  46. What I think you want:
  47. =======================
  48. A way to determine the minimum remaining lifetime of a resolver without
  49. contacting that resolver to ask it. In other words, a new "lifetime"
  50. field in the NAPTR record.
  51.  
  52. Why I think you want it:
  53. ========================
  54. In an earlier message you indicated that one application of such a
  55. capability would be to automate the maintenance of links in HTML-like
  56. resources without continual polling, where a poll would probably be the
  57. wasteful operation of fetching the resource then throwing it away. In
  58. another message you said that this information will help in the migration
  59. from one resolution protocol to another.
  60.  
  61. Why what you are asking for does not achieve at least some of
  62. what you want:
  63. ===========================================================
  64. Imagine that today (11/26/96) a customer signs a contract
  65. with a Resolution Service Provider (RSP) for one year's worth of service.
  66. You seem to be asking that the RSP be capable
  67. of updating their NAPTR record to indicate that the HTTP resolver they
  68. run will be available until at least 11/26/97. But of course,
  69. new customers come along and sign new contracts, again for a year's
  70. service. The NAPTR record could be continually updated to reflect that
  71. the RSP is now contractually bound to provide the HTTP resolver for
  72. a year after the most recent agreement with a customer. But why? It
  73. does not mean that the the original customer's URNs will still be
  74. resolvable there. Their contract was only for one year. Maybe they
  75. have decided to contract with a different RSP that can offer the spiffy
  76. new X2Y service.
  77.  
  78. This is why I think that a special "lifetime" field in the NAPTR
  79. record does not achieve what you want from the "link maintenence" example.
  80. If I write a paper and use a URN to link to someone else's resource, the
  81. lifetime of the resolver does not necessarily tell me the lifetime of
  82. their resolution info on that resolver. However, if I go ahead and ask
  83. the resolver about that particular URN (assuming the approach in the HTTP
  84. Conventions draft), the HTTP Expires: header can be used to provide
  85. the detailed information on just how long one particular URN will
  86. continue to be resolvable on one particular resolution server under
  87. a particular resolution protocol. (This will be the minimum of the
  88. time remaining on that customer's contract, the time until the
  89. resolution service provider wants to scrap a particular resolution
  90. protocol, and the time remaining on the resolution service provider's
  91. contract with whoever they got their domain name from). When that
  92. time has expired I can try to resolve the name again and see what
  93. happens.
  94.  
  95.  
  96. What it *would* achieve over existing capabilities and why I think
  97. the additional benefit is not significant:
  98. =================================================================
  99. >I've been off-line with Ron Daniel who is happy that schemes such as HTTP
  100. >which have expiry headers can get this information to you once you have
  101. >resolved how to speak to HTTP.
  102. >
  103. >No-one seems to be able to get their head round the fact that such expiry
  104. >times are meaningless if you don't know how long you will be able to resolve
  105. >URNs which end up pointing to HTTP, but might point to another scheme later
  106. >to keep them alive. I think the problem is that people just aren't thinking
  107. >in terms of how much the world will change in the decades ahead. All I'm
  108. >trying to propose is a way to avoid having to poll for broken resolution
  109. >services in the future.
  110.  
  111. Let's look at a case where a resolution service provider (RSP) wants to
  112. swap from HTTP to some other resolution protocol - Z39.50 for example.
  113. We will also look at a couple of clients and how the swap affect them.
  114.  
  115. RSP:
  116. ----
  117. When the RSP starts offering HTTP_based resolution, they might say
  118. "OK, we will try this HTTP thing for 6 months as see how it goes".
  119. Their N2L, N2C, ... scripts generate an Expires: header that clocks
  120. down to that 6 month deadline. The NAPTR record for their HTTP-based
  121. resolver has a TTL that is considerably shorter - 1 week perhaps -
  122. to allow them to change the resolution services offered during the
  123. initial experimental period with only the week's advance notice.
  124.  
  125. Client 1:
  126. ---------
  127. Somewhere along the way, a smart link manager is given a URN and
  128. starts to resolve it. It gets the Expires: header from the RSP's
  129. HTTP-based resolver and caches the expiry data with the URN. Its
  130. job as a "smart" link manager will be to recheck the availability of
  131. the resource and flag an error when it is no longer resolvable. It
  132. should do this in the least intrusive fashion possible.
  133.  
  134. RSP:
  135. ----
  136. Sometime later, the RSP decides that they don't like the HTTP-based
  137. approach and want to switch to a Z39.50-based approach. They will
  138. wait until the 6-month period expires before killing off the HTTP
  139. daemon, but in the meantime they bring up their Z39.50-based server and
  140. install a NAPTR record to point to it. They also decide that they
  141. want the NAPTR record for their HTTP server to disappear about a
  142. week before the server itself is killed. So, they start clocking
  143. down the TTL on the HTTP server's NAPTR record to that T=6mo-1week
  144. deadline. At that time the HTTP daemon's NAPTR record will be removed. 
  145.  
  146. Client 2:
  147. ---------
  148. Before that T=6mo-1week deadline, a different user agent attempts to
  149. resolve the URN and now encounters 2 terminal NAPTR records - one for
  150. the HTTP resolver and one for the Z39.50 resolver. It picks which one to
  151. talk to based on the protocols it knows how to speak, the services they
  152. offer, etc. If it knows both resolution protocols, it MAY make the
  153. decision based on the TTL of the NAPTR records. Once it has contacted
  154. the resolver the client will know how long the resolver guarrantees to
  155. provide resolution for that URN. As shown in the "contract" example
  156. earlier, this can be a considerably shorter time than the lifetime of
  157. the resolver.
  158.  
  159. Client 1:
  160. ---------
  161. The 6 month expiry date comes along, and a random time later the
  162. link manager wants to recheck the URN. It starts a new NAPTR resolution
  163. which, some number of DNS probes later, gets it to the terminal NAPTR
  164. records. There is now a new terminal NAPTR record for a Z39.50-based
  165. resolver, but no HTTP-based record. If the client knows Z39.50
  166. it can do something like N2Ls and get new expiry info. If not,
  167. it can use the TTL as a provisional expiry date and do more frequent checks
  168. of the DNS records in the hopes that a known resolution protocol will
  169. be offered at some time in the future. When it is, a more accurate
  170. expiry time can be obtained.
  171.  
  172.  
  173.  
  174. Your request for a resolver lifetime field would modify the scenario
  175. above in two places.
  176.  
  177. In the Client 2 paragraph, in the case where the client could
  178. speak more than one of the resolution protocols that were offered,
  179. it could make the decision on which one to pursue based on the resolver
  180. lifetime rather than the NAPTR TTL. However, as the "contract" example
  181. shows, this does not guarantee that the resolver with the longer
  182. minimum guaranteed lifetime actually will resolve that resource
  183. longer than the other one. So, the difference here does not seem
  184. all that significant.
  185.  
  186. The second place where the "lifetime" field would change the scenario
  187. is in the last step where Client 1 does not know the new protocol.
  188. Rather than marking the URN provisionally resolvable with the NAPTR
  189. TTL as the time for the next check, it could mark it provisionally
  190. resolvable with the Z39.50 resolver lifetime as the time for the next
  191. check. The TTL is never longer than the resolver lifetime, so the TTL
  192. is the safer choice although it will lead to more "polls". In this
  193. case, however, a "poll" is fairly light weight - some DNS probes to
  194. see if the terminal NAPTR for the unknown protocol still exits (in which
  195. case we retain the provisionally resolvable status and check back later)
  196. or if new NAPTRs exist that we can follow. These could be introduced
  197. at any time so checking for them periodically is not a bad thing.
  198. Here again, the benefit from the new field does not seem so clear-cut that
  199. I'm not convinced it is necessary.
  200.  
  201.  
  202. I'm willing to be convinced of the necessity for such a field. However,
  203. since it requires extra space in the records and changes to running
  204. code you have to make a good case for it. If you can show me where the
  205. combination of DNS TTLs and resolution-specific Expiry info does not
  206. provide enough info to handle an important case, and the new field would,
  207. I'll change the spec.
  208.  
  209. Regards,
  210. Ron Daniel Jr.                       email: rdaniel@lanl.gov
  211. Advanced Computing Lab               voice: +1 505 665 0597
  212. MS B287                                fax: +1 505 665 4939
  213. Los Alamos National Laboratory        http://www.acl.lanl.gov/~rdaniel/
  214. Los Alamos, NM, USA  87545    obscure_term: "hyponym"
  215.